{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Mixtures of Gaussian Processes with GPclust\n",
    "\n",
    "*James Hensman, November 2014 <br> Valentine Svensson, November 2015*\n",
    "\n",
    "Here are a few notebooks outlining the functionality of GPclust.\n",
    "\n",
    "You may also be interested in reading some of the tutorials on [GPy](http://sheffieldml.github.io/GPy/), the Gaussian process framework that GPclust is built on."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Mixtures of Gaussians\n",
    "The [MOG notebook](./mixture of Gaussians.ipynb) described how to use GPclust to infer a basic mixture of Gaussians model. This also illustrates some of the workings of GPclust such as the merge-split method, truncated Dirichlet process approximations and the setting of parameters.\n",
    "\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Mixtures of Gaussian Processes\n",
    "The [first MOHGP notebook](./MOHGP_demo.ipynb) demonstrates using GPclust's MOHGP (Mixture of Hierarchical Gaussian Processes) class on a synthetic dataset. We show how to build the model, how to deal with the kernel (covariance function) parameteres, and basic plotting. \n",
    "\n",
    "The MOHGP model is hierarchical because is uses a hierachy of GPs to model first the mean of the cluster, and then the deviation of each time-course in the cluster from that mean. You may be interested in the notebook on [hierarchical GPs in GPy](https://github.com/SheffieldML/notebook/blob/master/compbio/Hierarchical.ipynb)\n",
    "\n",
    "The next notebook illustates using [GPclust on the Drosphila](./drosophila.ipynb) data of Kalinka et al (2009)."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": false
   },
   "source": [
    "## Overlapping Mixtures of Gaussian Processes\n",
    "\n",
    "A [notebook](./OMGP_demo.ipynb) describing a couple of applications of the OMGP model is included. The OMGP model is generally useful for heteroscedastic trends. The illustratory examples shows how to model a time series with diverging populations over time, and how to separate noise from signal. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 2",
   "language": "python",
   "name": "python2"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 2
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython2",
   "version": "2.7.10"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 0
}
